/**
 * 商品相关请求模块
 */
import request from '@/utils/request'

/**
 * 分页获取顶级规格参数组
 */
export const getSpecGroup = (page, size, data) => {
  return request({
    method: 'POST',
    url: `/specGroup/search/${page}/${size}`,
    // Body 参数使用 data 设置
    // Query 参数使用 params 设置
    // Headers 参数使用 headers 设置
    data
  })
}

/**
 * 获取所有规格参数组
 */
export const getAllSpecGroup = () => {
  return request({
    method: 'GET',
    url: 'specGroup'
    // Body 参数使用 data 设置
    // Query 参数使用 params 设置
    // Headers 参数使用 headers 设置
  })
}

/**
 * 根据id获取规格参数组信息
 */
export const getSpecGroupById = (groupId) => {
  return request({
    method: 'GET',
    url: '/specGroup/' + groupId
    // Body 参数使用 data 设置
    // Query 参数使用 params 设置
    // Headers 参数使用 headers 设置
  })
}

/**
 *
 */
export const getTest = data => {
  return request({
    method: 'POST',
    url: '/specParam/test',
    // Body 参数使用 data 设置
    // Query 参数使用 params 设置
    // Headers 参数使用 headers 设置
    data
  })
}

/**
 * 根据ID删除规格参数组
 */
export const deleteSpecGroupById = specGroupId => {
  return request({
    method: 'DELETE',
    // 接口文档中的写的路径参数需要在 url 中传递
    // 凡是看见接口路径中有的 :xxx 格式的字段，则需要传递路径参数
    url: `/specGroup/${specGroupId}`
  })
}

/**
 * 添加规格参数
 */
export const addSpecParam = (data) => {
  return request({
    method: 'POST',
    url: '/specParam',
    data
  })
}

/**
 * 添加规格参数组
 */
export const addSpecGroup = (data) => {
  return request({
    method: 'POST',
    url: '/specGroup',
    data
  })
}

/**
 * 删除规格参数
 */
export const deleteSpecParamById = (paramId) => {
  return request({
    method: 'DELETE',
    url: `/specParam/${paramId}`
  })
}

/**
 * 更新规格参数
 */
export const updateSpecParamById = (data) => {
  return request({
    method: 'PUT',
    url: `/specParam/${data.id}`,
    data
  })
}

/**
 * 根据类目查询其下通用的规格组
 * @param brandId
 * @param data
 */
export const findGeneralSpecGroupByCategoryId = (categoryId) => {
  return request({
    method: 'GET',
    url: `/specGroup/category/general/${categoryId}`
  })
}

/**
 * 根据类目查询其下通用的规格组
 * @param brandId
 * @param data
 */
export const findUnGeneralSpecGroupByCategoryId = (categoryId) => {
  return request({
    method: 'GET',
    url: `/specGroup/category/ungeneral/${categoryId}`
  })
}

/**
 * 根据类目查询其下所有的规格组
 * @param brandId
 * @param data
 */
export const findSpecGroupByCategoryId = (categoryId) => {
  return request({
    method: 'GET',
    url: `/specGroup/category/${categoryId}`
  })
}
